home *** CD-ROM | disk | FTP | other *** search
AMOS Source Code | 1996-01-18 | 15.0 KB | 400 lines |
- Set Buffer 100
- FIL$=Command Line$
- If FIL$="" Then FIL$="dh1:DF�/MicroDot/Data/Daemon.puf"
- D$= Extension_8_03E0(Dir$)
- Screen Open 0,640,256,4,$8000
- Curs Off : Flash Off : Paper 0 : Pen 1 : Cls
- Palette 0,$FFF,$8F8,$88F
- R$=Chr$(13)+Chr$(10)
- 'MAIL$="Chris@Sixpack.pfalz.de (Phoenix)"
- 'MEID$="@p22.sixpack.pfalz.de"
- MAILABS$="platon@w-specht.rhein-ruhr.de (Phoenix)"
- MEID$="chrizzly@platon.rhein-ruhr.de"
- Dim ST$(10,40),ST(40),KEYS$(10,20),KEYS(10,2)
- For ST=0 To 10
- ST(ST)=0
- Do
- B$=""
- Do
- Read A$
- Exit If A$=""
- B$=B$+A$+R$
- Loop
- ISOCON[B$]
- ST$(ST,ST(ST))=B$
- Exit If B$=""
- Inc ST(ST)
- Loop
- Exit If ST(ST)=0
- Next
- Restore KEYS
- For KE=0 To 10
- Read A$
- Exit If A$=""
- KEYS(KE,0)=0
- Do
- P=Instr(A$," ")
- Exit If P=0
- B$=Left$(A$,P-1) : A$=Mid$(A$,P+1)
- ISOCON[B$]
- KEYS$(KE,KEYS(KE,0))=B$
- Inc KEYS(KE,0)
- Loop
- ISOCON[A$]
- KEYS$(KE,KEYS(KE,0))=A$
- Inc KEYS(KE,0)
- Read KEYS(KE,1),KEYS(KE,2)
- Next
- Open Out 1,FIL$
- Extension_8_063A D$
- Append 2,"DH1:DF�/Term/Logs/Daemon.log"
- Print #2,"Mailer Daemon started on "; Extension_8_0F0A( Extension_8_07CE );" "; Extension_8_0F1A( Extension_8_07E0 );".";Chr$(10);
- MAILS=0
- Do
- F$= Extension_8_064C
- Exit If F$=""
- If Extension_8_06A2 >0
- Pen 3 : Print "File: ";F$;": ";
- Extension_8_0456 Extension_8_03EC(D$)+F$,9
- ST=Start(9) : LE=Length(9) : ED=ST+LE
- If Hunt(ST To Min(ED,ST+10000),"LEN:")
- Pen 2 : Print "Working..."
- Repeat
- DAEMON=0 : MAIL$=""
- Do
- HE$=Peek$(ST,80,":")
- Add ST,Len(HE$)+1
- While Peek(ST)=9 or Peek(ST)=32 : Inc ST : Wend
- DA$=Peek$(ST,400,Chr$(13)) : Add ST,Len(DA$)+2
- If HE$="EMP" : Gosub CHECKBOARD : End If
- If HE$="LEN" : MLEN=Val(DA$) : End If
- Gosub CHECKHEADER
- Exit If Peek(ST)=13 or Peek(ST)=10
- Loop
- If DAEMON
- Gosub MAKEMAIL
- ' Else
- ' Print #2,"Ignored.";Chr$(10);
- End If
- Add ST,MLEN+2
- Until ST=>ED-2
- Else
- Pen 1 : Print "Not a point buffer"
- End If
- End If
- Loop
- Print #2,"Mailer Daemon finished. Mails written:"+Str$(MAILS);Chr$(10);
- Print #2,"-----------------------------------------------------------------------------";Chr$(10);
- Close 1
- Close 2
- Erase 9
- Wait 25
- Screen Close 0
- End
- CHECKBOARD:
- If DA$="/LOKAL/PICKET-FENCES" Then DAEMON=1
- If DA$="/LOKAL/PC-PROBS" Then DAEMON=1
- ' If Instr(DA$,"LOKAL") Then DAEMON=1
- Return
- CHECKHEADER:
- ' If HE$="EMP" Then PUHEAD[HE$,DA$]
- If HE$="MAILER" Then MAILER$=DA$
- If HE$="EMP" Then PUHEAD[HE$,"/LOKAL/PICKET-FENCES"]
- If HE$="ABS" Then PUHEAD[HE$,MAILABS$] : AB$=DA$
- If HE$="MID"
- PUHEAD["MAILER","Chris' Daemon V0.78"]
- PUHEAD["BEZ",DA$]
- ID$=Mid$(Hex$( Extension_8_07E0 +( Extension_8_07CE )*256,8),2)+MEID$
- PUHEAD["MID",ID$]
- PUHEAD["ROT",""]
- End If
- If HE$="BET"
- BET$=DA$
- If Upper$(Left$(DA$,2))<>"RE" : DA$="Re: "+DA$ : End If
- PUHEAD[HE$,DA$]
- D= Extension_8_07CE : T= Extension_8_07E0
- DATE$= Extension_8_0EB8( Extension_8_07F2(D),4)+ Extension_8_0EB8( Extension_8_0800(D),2)+ Extension_8_0EB8( Extension_8_0810(D),2)+( Extension_8_0F1A(T)-":")+"S+2"
- PUHEAD["EDA",DATE$]
- End If
- Return
- MAKEMAIL:
- AD=ST+2 : OPI=1 : MO=-1 : KEY=-1
- If Instr(Upper$(MAILER$),"CROSS") Then OPI=0 : MO=2
- US$=Lower$(Left$(AB$,Instr(AB$,"@")-1))
- US$=Upper$(Left$(US$,1))+Mid$(US$,2)
- If OPI
- M$="Hi Kumpel! Bist Du nicht der Rechner von "+US$+"?"+R$
- M$=M$+"Ich wollte nur etwas zu Deiner letzten Mail erg"+Chr$($84)+"nzen:"+R$+R$
- Else
- M$="Hallo alter Schrottrechner von "+US$+"!"+R$
- M$=M$+"Deiner letzten Mail kann ich absolut nicht zustimmen!"+R$+R$
- End If
- QST=1 : LIN=0 : QLIN=0
- Repeat
- QUOTE=1
- T$=Peek$(AD,160,Chr$(13))
- Add AD,Len(T$)+2
- If T$="" Then QUOTE=0
- If Left$(T$,2)="--" and LIN>5 Then Exit
- If Left$(T$,2)="##" Then QUOTE=0
- If Len(T$)-Len(T$-">")>1 Then QUOTE=0
- If Len(T$)-Len(T$-" "-"_"-"/"-">"-"="-"-"-"|"-"\")>4 Then QUOTE=0
- If QST and QUOTE=0 and LIN>4 Then QST=0
- If QST Then QUOTE=0
- If QUOTE
- A$=Lower$(T$)
- If KEY=-1 and Len(T$)-Len(T$-">")=0
- For KE=0 To 10
- Exit If KEYS(KE,0)=0
- For A=0 To KEYS(KE,0)-1
- If Instr(A$,KEYS$(KE,A))
- If KEYS(KE,1)<1000
- KEY=KE : PO=KEYS(KE,1) : NE=KEYS(KE,2) : KII$=KEYS$(KE,A)
- Else
- If KEYS(KE,1)=1000
- Inc MO
- Else
- Dec MO
- End If
- End If
- End If
- Next
- Next
- End If
- If QLIN<8
- M$=M$+">"+T$+R$ : Inc QLIN
- End If
- End If
- Inc LIN
- Until AD=>ST+MLEN
- M$=M$
- If KEY=-1
- T$=ST$(OPI,Rnd(ST(OPI)-1))
- Else
- If MO>0
- T$=ST$(PO,Rnd(ST(PO)-1))
- Else
- T$=ST$(NE,Rnd(ST(NE)-1))
- End If
- End If
- M$=M$+R$+T$+R$+"Phoenix - The Next Generation"+R$
- LM=Len(M$)
- PUHEAD["LEN",Mid$(Str$(LM),2)]
- If KEY<>-1
- A$=Left$(BET$,30)
- Pen 1 : Print #2,"Mail: ";A$+Space$(31-Len(A$));
- Print #1,MAIL$;R$;M$; : Print #2,"LEN: "; Extension_8_0EC8(LM,5);" Key: ";KII$;"!";Chr$(10);
- Inc MAILS
- ' Else
- ' Print #2,"No keyword!";Chr$(10);
- End If
- Return
- ' 0
- Data "Sach mal spinnst Du???",""
- Data "Das ist jetzt aber �berhaupt kein Argument!",""
- Data "Jaja... bleib ruhig mit Deinem PC in der Steinzeit!",""
- Data "Kapier' es doch endlich! Amiga ist einfach besser!",""
- Data "Amiga - War gut, ist gut, bleibt gut!",""
- Data "Amiga - Nicht immer, aber immer �fter.",""
- Data "Amiga - Simply the best!",""
- Data "Amiga - Eine Perle der Natur.",""
- Data "Amiga - Haste einen, biste was.",""
- Data "Amiga - Computer for creative people.",""
- Data "Amiga - Was sonst?",""
- Data "Amiga - The other side of life!",""
- Data "Amiga - The others just watch!",""
- Data "Amiga - Just do it!",""
- Data "Amiga - Ein Rechner r�umt auf."
- Data "Amiga - Jetzt drei mal schneller!",""
- Data "Amiga - More fun!",""
- Data "Amiga - There's no alternative.",""
- Data "Amiga - In Tirannos!",""
- Data "Amiga - Back for future!",""
- Data "Phoenix - Ein Amiga k�mpft gegen das B�se.",""
- Data "Warum PC wenns Amiga gibt?",""
- Data "Gib PC keine Chance!",""
- Data "Der ganze Tag ist schon versaut, wenn man sich einen PC anschaut!",""
- Data "Lieber Multitasking, Multimedia und Freude, als Multischrott,"
- Data "Multiprobleme und Depressionen.",""
- Data "Wenn Du das glaubst, denkst Du noch seeehr mittelalterlich.",""
- Data "Ach geh doch auf Dein WC und schei� es voll.",""
- Data "Das Wasser ist tr�b, die Luft ist rein, der PC mu� wohl ertrunken sein!",""
- Data "Liegt die Dose tot im Keller, war d'Amiga wieder schneller!",""
- Data "Die H�lle beginnt beim PC.",""
- Data "PC - das Werk des Teufels!",""
- Data "...und Gott schuf den Amiga...",""
- Data ""
- ' 1
- Data "Genau!",""
- Data "Jepp! Sach ich auch immer ;-)",""
- Data "Wir verstehen uns :)",""
- Data "Wenn alle Menschen nur so klug w�ren wie Du, dann w�rde es wohl"
- Data "keinen PC geben.",""
- Data "Ich sach ja: Der PC hat sich weiterentwickelt - zur Spielekonsole!",""
- Data "Ich glaube wir sollten mal ne neue Partei gr�nden. ;-)",""
- Data "Tja. Aber die PC-Prolis werden es wohl NIE verstehen!",""
- Data "Klaro. Der Amiga ist eben einfach besser.",""
- Data "Wer den PC kennt, wei� was ich meide.",""
- Data "Die H�lle beginnt beim PC.",""
- Data ""
- ' 2
- Data "Hindenburg - Titanic - Challenger - MS-DOS - Windows!",""
- Data "F�r die einen ist es Windows, f�r die anderen die l�ngste"
- Data "Batchdatei der Welt!",""
- Data "MS-DOS: Mannigfaltiger Schmerz Durch Offensichtliche Schikane.",""
- Data "MS-DOS: Manche Schaffens Dank Optimaler Schulung.",""
- Data "MS-DOS: Morgendlicher Schreck Der Ordentlichen Sekret�rin.",""
- Data "MS-DOS: Mehr Spa� Dank Origineller Spielregeln.",""
- Data "Spiel doch weiter Solitaire mit deinem Windoof!",""
- Data "Bist du beim Warten auf Windows noch nicht in den 7-j�hrigen"
- Data "Schlaf verfallen, weil deine AT-BUS Platte so rattert?",""
- Data "Was entdeckte die Frau von Bill Gates in der Hochzeitsnacht?"
- Data R$+R$+R$+R$+R$+"Die wahre Bedeutung des Wortes MicroSoft!",""
- Data "Wie wechselt Bill Gates eine defekte Gl�hbirne?"
- Data R$+R$+R$+R$+R$+"Gar nicht. Er erkl�rt die Dunkelheit zum Standard.",""
- Data "Microsoft: Die Lieblingsfirma von Masochisten.",""
- Data "Windows Error 001: Windows loaded. System in danger.",""
- Data "Windows Error 002: No error... yet.",""
- Data "Windows Error 003: Dynamic linking error. Your mistake is now in"
- Data " every file.",""
- Data "Windows Error 004: Erronious error. Nothing wrong.",""
- Data "Windows Error 005: Multitasking attempted. System confused.",""
- Data "Windows Error 007: System price error. Inadequate money spent.",""
- Data "Windows Error 008: Broken window. Watch for glass fragments.",""
- Data "Windows Error 009: Horrible bug encountered. God knows what has happened.",""
- Data "Windows Error 00B: Inadequate disk space. Need 50 meg minimum.",""
- Data "Windows Error 00C: Memory hog error. More ram needed. More! More!",""
- Data "Windows Error 00D: Window closed. Do not look out.",""
- Data "Windows Error 00E: Window open, do not look in.",""
- Data "Windows Error 00F: Unexplained error. Please tell us how it happened.",""
- Data "Windows Error 010: Reserved for future mistakes.",""
- Data "Windows Error 014: Non-existant error. This cannot really be happening.",""
- Data "Windows Error 015: Unable to exit windows. Try the door.",""
- Data "Windows Error 017: Keyboard locked. Press any key to continue.",""
- Data "Windows Error 019: User error. It's not our fault. It's not! It's not!",""
- Data "Windows Error 01A: Operating system overwritten. Terribly sorry.",""
- Data "Windows Error 0FF: Could not write onto CD-ROM, please contact your"
- Data " local dealer.",""
- Data "'640 KB sollten f�r alle reichen' - Bill Gates.",""
- Data "'Es gibt keine bedeutenden Fehler in unserer Software, die eine"
- Data "nennenswerte Anzahl von Benutzern behoben haben m�chte.' - Bill Gates.",""
- Data "Was bedeutet MicroSoft?"
- Data R$+R$+R$+R$+R$+"Die Entwickler haben Rinderwahn.",""
- Data " **** MICROSOFT WINDOWS V3.1 ****"
- Data "64 MB RAM SYSTEM 38911 SYSTEM BYTES FREE"
- Data "READY.",""
- Data ""
- ' 3
- Data "Ach D�monen sind gar nicht so schlecht wie ihr immer behauptet! :)",""
- Data "Gebt D�monen eine Chance!",""
- Data "Ohne D�monen w�re das Leben nur halb so sch�n ;-)",""
- Data "Ich wei� ja, da� die ganzen PC-D�monen nur Schei�e bauen,"
- Data "aber die Amiga-D�monen sind doch ganz nett, oder? ;-)",""
- Data "D�monen haben auch eine Existenzberechtigung!",""
- Data "Mann seid ihr rassistisch!",""
- Data "D�monen sind auch nur Menschen!",""
- Data ""
- ' 4
- Data "Jepp! D�monen sind cool!",""
- Data "D�monen in den Bundestag!",""
- Data "Amiga-D�monen rulen!",""
- Data "Ein kleines Programm, das viel Freude macht!",""
- Data "<R�lps>. Sorry ;-)",""
- Data "Phoenix - Ein vorpubert�res kleines Monster ;-)))",""
- Data ""
- ' 5
- Data "SCSI wurde f�r intelligente Computer erfunden."
- Data "Das ist auch der Grund, warum der PC sowas nicht hat!",""
- Data "Wir hatten am Amiga schon SCSI, als die PC-Proleten noch mit"
- Data "ihrem AT-Bus-Schrott um den Weihnachtsbaum gerannt sind!",""
- Data "Kann man auf dem PC eigentlich Paritionen gr��er als 32 MB"
- Data "einrichten? ;-)",""
- Data "Ist es nicht irgendwie nervig, wenn man nur 0,5MB/s bei"
- Data "AT-Bus Platten hat?",""
- Data ""
- ' 6
- Data "Lieber 4 echte 8-Bit Kan�le als einen billigen 16-Bit Kanal!",""
- Data "4 Kan�le reichen locker f�r einen Multimedia-Computer, wer"
- Data "mehr will, kann sichs ja mischen lassen!",""
- Data "SoundBlaster - ein Standard, der dem Amiga weit hinterher hinkt!",""
- Data "Was man heutzutage f�r M�ll-ScreamTracker Tunes h�ren kann...",""
- Data "Da kommt einem doch das Kotzen! :-{****. Nene. Amiga rulez!",""
- Data "Lieber sch�n komponierte 4 Kan�le als grauenhafte 16 Channel!",""
- Data ""
- ' 7
- Data "Bitte, bitte Leute, schreibt Standard mit D! ;-)",""
- Data "Man sollte Dir mal nen Duden schenken! ;-)",""
- Data "Ein Modem mit Rechtschreibpr�fung, das w�re doch das richtige f�r Dich!",""
- Data "Ich hoffe man wird Deinetwegen mal ne Rechtschreibreform durchf�hren.",""
- Data ""
- ' 8
- Data "'Herr Doktor, der Patient mit dem 'Intel Inside'-T-Shirt, woran"
- Data " ist der eigentlich gestorben?'"
- Data "'Der Herzschrittmacher ist abgest�rzt. Als er die 65.5 Lebensjahre"
- Data " �berschritten hatte, zuckte er zusammen, sagte was von 'Schutz-"
- Data " verletzung' und 'Fehler beim Lesen auf Laufwerk A, Abbrechen,"
- Data " Wiederholen, �bergehen?' und das war's dann...",""
- Data "Was hat ein Intel Pentium mit einer Blondine gemeinsam?"+R$+R$+R$+R$+R$
- Data "Sie k�nnen beide nicht rechnen!",""
- Data "F: Wieviele Pentium-Designer braucht man, um eine Gl�hbirne zu wechseln?"
- Data R$+R$+R$+R$+R$+"A: 1.99904424358435, aber das ist genau genug f�r eine nicht-"
- Data " technische Anwendung.",""
- Data "F: Was ist eine andere Bezeichnung f�r den 'Intel inside'"
- Data " Aufkleber, der auf Pentiums geklebt wird?"
- Data R$+R$+R$+R$+R$+"A: Warnschild oder Wahrheit in der Werbung.",""
- Data "F: Wie nennt man eine Folge von FDIV-Anweisungen auf einem Pentium?"
- Data R$+R$+R$+R$+R$+"A: Sukzessive Approximation.",""
- Data "F: Was f�r einen Algorithmus benutzte Intel in der Flie�kommaaritmetik"
- Data " des Pentiums?"
- Data R$+R$+R$+R$+R$+"A: 'Das Leben ist wie eine Schachtel Pralinen.' (F.Gump)",""
- Data "F: Wieso hat Intel den Pentium nicht 586 genannt?"
- Data R$+R$+R$+R$+R$+"A: Als sie auf dem ersten Pentium 486 und 100 addieren kam"
- Data " 585.9999834543 raus.",""
- Data "F: Wie sieht die Sinus-Funktion bei einem Pentium aus?"
- Data "A: Nat�rlich wie die Tangenz-Funktion, der kleine Unterschied ist vertretbar.",""
- Data "Intel Inside - wir haben das Problem eingekreist.",""
- Data "Intel investiert in die Zukunft - der Hitech-Toaster.",""
- Data "Warum ist bei der Werbung von Intel soviel Licht im Rechner?"
- Data R$+R$+R$+R$+R$+"Is doch klar! Das ist der Pentium, der gl�ht doch so hell!",""
- Data "Intel abseits!",""
- Data ""
- ' 9
- Data "Du bist pervers!",""
- Data "Sag das mal deiner Mutter!",""
- Data "Kannst du uns nicht mit deinen vorpubert�ren Problemen in Ruhe lassen?",""
- Data "Wozu gibts eigentlich das Erotik-Brett?",""
- Data "Ferkel!",""
- Data ""
- ' END
- Data ""
- KEYS:
- Data "window windoof microsoft ms-dos winzigweich kleinweich bill gates",2,2
- Data "daemon d�mon phoenix",4,3
- Data "scsi at-bus bus",5,5
- Data "sound kanal kan�le",6,6
- Data "standart",7,7
- Data "intel pentium",8,8
- Data "pee cee pc ibm clones",1,1
- Data "sex pervers ficken bumsen blasen anal",9,9
- Data "commodore amiga a500 a1200 a2000 a3000 a4000 cd32",0,0
- Data "gut super geil klug recht spitze :-) ;-) :) ;)",1000,1000
- Data "bescheuert schlecht schei�e scheisse idiot trottel dumm schimpf schrott sterben storben pleite schlimm :-( :(",1001,1001
- Data ""
- Procedure PUHEAD[HEAD$,DAT$]
- Shared MAIL$
- MAIL$=MAIL$+HEAD$+":"+Tab$+DAT$+Chr$(13)+Chr$(10)
- End Proc
- Procedure ISOCON[T$]
- X=Free
- For A=1 To Len(T$)
- AD=Varptr(T$)+A-1
- P=Peek(AD)
- If P=Asc("�") Then Poke AD,$84
- If P=Asc("�") Then Poke AD,$8E
- If P=Asc("�") Then Poke AD,$94
- If P=Asc("�") Then Poke AD,$99
- If P=Asc("�") Then Poke AD,$81
- If P=Asc("�") Then Poke AD,$9A
- If P=Asc("�") Then Poke AD,$E1
- Next
- End Proc